﻿//
// BlankPage.xaml.h
// Declaration of the BlankPage.xaml class.
//

#pragma once

#include "DirectXPage.g.h"
#include "BasicTimer.h"
#include "DisplayEngine.h"
#include "RectangleDisplayItem.h"
#include "GravityObject.h"
#include "RepeatObject.h"
namespace DropDown
{
	/// <summary>
	/// A DirectX page that can be used on its own.  Note that it may not be used within a Frame.
	/// </summary>
    [Windows::Foundation::Metadata::WebHostHidden]
	public ref class DirectXPage sealed
	{
	public:
		DirectXPage();

	private:
		void OnWindowSizeChanged(Windows::UI::Core::CoreWindow^ sender, Windows::UI::Core::WindowSizeChangedEventArgs^ args);
		void OnLogicalDpiChanged(Platform::Object^ sender);
		void OnOrientationChanged(Platform::Object^ sender);
		void OnDisplayContentsInvalidated(Platform::Object^ sender);
		void OnRendering(Object^ sender, Object^ args);
		Windows::Foundation::EventRegistrationToken m_eventToken;

		BasicTimer^ m_timer;

		DisplayEngine m_displayRect;
		RectangleDisplayItem rectItem;
		GravityObject player;
		RepeatObject leftSide;
		RepeatObject rightSide;
		int i;
		void Key_Up(Windows::UI::Core::CoreWindow^ sender,Windows::UI::Core::KeyEventArgs^ e);
		void Key_Down(Windows::UI::Core::CoreWindow^ sender,Windows::UI::Core::KeyEventArgs^ e);
		void SwapChainPanel_Loaded_1(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
	};
}
